home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Turnbull China Bikeride
/
Turnbull China Bikeride - Disc 2.iso
/
STUTTGART
/
GRAPHICS
/
RAYTRACING
/
POVRAY-2.2
/
SCENES
/
level3
/
IONIC5
< prev
next >
Wrap
Text File
|
1993-09-28
|
18KB
|
825 lines
// Persistence of Vision Raytracer Version 2.0
// This data includes 1 Wall, 1 large 2nd floor column,
// & 2 smaller ionic colums.
// b-snake.dat is the lower ctds twist that goes around the
// door openings.
// s-head3.dat is the head & top twist of creature
// turn.dat is ctds data that creates the ionic turned capitals.
// panther.dat is csg of panther figure.
// Modified for use in stereo pair. Two of the GIF
// images have been replaced with single colors, and a third column
// was added to the bottom row.
//
// Three cameras are included, the original, and two for stereo.
#include "colors.inc"
#include "shapes.inc"
#include "marble.inc"
#include "b-snake.inc"
#include "turn.inc"
#include "panther.inc"
#include "s-head3.inc"
#declare pink = color red 1.0 green 0.5 blue 0.5
/* original camera */
camera {
location <-50, 80, -220>
direction <0, 0, 1.5>
up <0, 1, 0>
right <4/3, 0, 0>
}
/* camera for left eye, render at 768 x 480 or similar aspect ratio */
/*
camera {
location <-61, 80, -220>
direction <0, 0, 1.4>
up <0, 1, 0>
right <1.6, 0, 0>
}
*/
/* camera for right eye, render at 768 x 480 or similar aspect ratio */
/*
camera {
location <-39, 80, -220>
direction <0, 0, 1.4>
up <0, 1, 0>
right <1.6, 0, 0>
}
*/
/*-------------- WORLD WALLS ---------------------------------*/
sphere {
<0, 0, 0>, 50000
texture {
pigment { MidnightBlue }
finish {
ambient 1.0
diffuse 0.0
}
}
}
/*---------------LIGHT #1------------------------------------*/
light_source { <700, 150, -500> color White }
/*--------------LIGHT #2-------------------------------------*/
light_source { <-4000, 100, -1000> color White }
/**********************************************************************/
/*-----------BASE OF COLUMN A / TOP FLOOR-------------------*/
#declare base_a = union {
sphere { <0, 0, 0>, 1 scale <13, 5.5, 13> }
sphere { <0, 0, 0>, 1 scale <11, 3, 11> translate 4*y }
cylinder { <0,0,0>, y, 1 scale <10, 4, 10> translate 5*y }
texture {
marble1
scale <9, 6, 4>
finish {
ambient 0.5
diffuse 1
}
}
texture {
marble4
scale <7, 12, 9>
rotate <0, 0, -40>
finish {
diffuse 1.0
phong 0.6
phong_size 50
}
}
rotate 40*y
bounded_by {
cylinder {
<0,0,0>, y, 1
scale <13.5, 16, 13.5>
translate -4*y
}
}
}
/*-----------MOTIF TILE WORK--------------------*/
#declare motif1 = cylinder {
<0,0,0>, y, 1
scale <9.5, 7, 9.5>
texture {
pigment {
image_map { gif "congo4.gif" }
scale <19, 7, 1>
translate <-9.5, 0, -1>
}
finish {
ambient 0.3
diffuse 0.9
phong 0.6
}
}
}
/*----------- COLUMN A -------------------------------------------------*/
#declare column_a = cylinder {
<0,0,0>, y, 1
scale <9.3, 50, 9.3>
texture {
marble1
finish {
crand 0.01
ambient 0.2
diffuse 0.8
}
scale <16, 4, 4>
}
texture {
marble2
scale <10, 6, 5>
rotate -30*z
finish { diffuse 1.0 }
}
texture {
marble4
finish {
phong 0.6
phong_size 45
}
scale <8, 15, 5>
rotate <0, 0, 50>
}
rotate 10*y
}
/*-----------COMBINE COLUMN & BASE --------------------------------*/
#declare top_column = union {
object { base_a }
object { motif1 translate 9*y }
object { column_a translate 12*y }
bounded_by {
cylinder {
<0,0,0>, y, 1
scale <13.5, 50, 13.5>
translate -3*y
}
}
}
/*--------------------TOP FLOOR---------------------------------------*/
#declare floor = object {
Cube
scale <100, 1, 50>
texture {
pigment { Salmon }
finish {
ambient 0.2
diffuse 0.5
phong 1.0
phong_size 10
}
}
}
/*----------- ROUND CORNER ----------------------------*/
#declare sp1 = sphere { <0, 0, 0>, 2 }
#declare round_cap = object {
union {
object { sp1 translate <-100, 0, -50> }
object { sp1 translate <-100, 0, 50> }
object { sp1 translate <100, 0, -50> }
object { sp1 translate <100, 0, 50> }
cylinder { <0,0,0>, x, 1 scale <200, 2, 2> translate <-100, 0, -50> }
cylinder { <0,0,0>, z, 1 scale <2, 2, 100> translate <-100, 0, -50> }
}
texture {
marble1
scale <50, 10, 40>
finish {
ambient 0.4
diffuse 0.9
}
}
texture {
marble2
scale <40, 5, 20>
rotate <0, 0, 40>
}
texture {
marble4
scale <20, 20, 20>
rotate <0, 0, -40>
finish { phong 0.6 phong_size 20 }
}
bounded_by {
object {
Cube
scale <103, 25, 53>
translate <0, 0, 0>
}
}
}
/*--------------- ONE DENTILE ----------------------------------*/
#declare d1 = object { Cube scale <1, 1.5, 2> }
#declare cornice = union {
object { Cube scale <103, 0.5, 53> translate <0, 2.5, 0> }
object { Cube scale <103, 1, 53> translate <0, -2, 0> }
object { Cube scale <101, 2, 51> translate <0, 0, 0> }
texture {
marble1
scale <10, 6, 4>
finish {
ambient 0.4
diffuse 1.0
}
}
texture {
marble2
scale <7, 6, 4>
rotate <0, 0, 40>
}
texture {
marble4
scale <3, 6, 5>
rotate <0, 0, -40>
finish {
phong 0.6
phong_size 20
}
}
bounded_by {
object {
Cube
scale <104, 3.5, 54>
translate <0, 0, 0>
}
}
}
/*-------------------- ROW OF DENTILES ---------------*/
#declare dentile_a = union {
object { d1 translate -50*x }
object { d1 translate -45*x }
object { d1 translate -40*x }
object { d1 translate -35*x }
object { d1 translate -30*x }
object { d1 translate -25*x }
object { d1 translate -20*x }
object { d1 translate -15*x }
object { d1 translate -10*x }
object { d1 translate -5*x }
object { d1 translate 0*x }
object { d1 translate 50*x }
object { d1 translate 45*x }
object { d1 translate 40*x }
object { d1 translate 35*x }
object { d1 translate 30*x }
object { d1 translate 25*x }
object { d1 translate 20*x }
object { d1 translate 15*x }
object { d1 translate 10*x }
object { d1 translate 5*x }
texture {
marble1
scale <10, 6, 4>
finish {
ambient 0.4
diffuse 0.9
}
}
texture {
marble2
scale <7, 6, 4>
rotate <0, 0, 40>
}
texture {
marble4
scale <3, 6, 4>
rotate <0, 0, -40>
finish {
phong 0.6
phong_size 20
}
}
bounded_by {
object {
Cube
scale <60, 2, 2>
translate <0, 0, 0>
}
}
}
/*-------------- COMBINE CORNICE, FLOOR, CAP & DENTILES -----------*/
#declare top_floor = union {
object { floor translate <0, 9, 0> }
object { round_cap translate <0, 7, 0> }
object { cornice translate <0, 3, 0> }
object { dentile_a translate <-50, 4, -52> }
object { dentile_a translate < 50, 4, -52> }
bounded_by {
object {
Cube
scale <105, 8, 57>
translate <0, 8, 0>
}
}
}
/*------------------MAKE AN IONIC CAPIAL---------------------------*/
#declare turn = object { s1 rotate -90*x }
/*--------------- 1/2 SECTION OF CAP ------------------------------*/
#declare cap_a = union {
sphere {
<0, 0, 0>, 1
scale <7, 2, 7>
translate <0, 1, 0>
}
cylinder {
<0,0,0>, y, 1
scale <6, 5, 6>
translate <0, 2, 0>
}
sphere {
<0, 0, 0>, 1
scale <8, 3, 8>
translate <0, 8, 0>
}
cylinder {
<0,0,0>, y, 1
scale <8, 2, 8>
translate <0, 8, 0>
}
texture {
marble1
finish {
ambient 0.4
diffuse 1.0
}
scale <5, 13, 4>
}
texture {
marble4
finish {
diffuse 1.0
phong 0.6
phong_size 20
}
scale <5, 7, 3>
rotate <0, 0, 50>
}
bounded_by {
cylinder {
<0,0,0>, y, 1
scale <8.5, 11, 8.5>
translate <0, -0.5, 0>
}
}
}
/*-------------- THE OTHER 1/2-----------------------------*/
#declare cap_b = union {
cylinder { <0,0,0>, y, 1 scale <1.2, 8, 1.2> translate <1, 0, -4> }
cylinder { <0,0,0>, y, 1 scale <1.2, 8, 1.2> translate <-1, 0, -4> }
cylinder { <0,0,0>, y, 1 scale <1.2, 4, 1.2> translate <-2, 0, -4> }
cylinder { <0,0,0>, y, 1 scale <1.2, 4, 1.2> translate <2, 0, -4> }
object { Cube scale <10, 2, 8> translate <0, 10, 2> }
object { Cube scale <7, 4, 4> translate <0, 4, 0> }
cylinder { <0,0,0>, z, 1 scale <4.5, 4.5, 8> translate <-6, 4, -4> }
cylinder { <0,0,0>, z, 1 scale <4.5, 4.5, 8> translate <6, 4, -4> }
texture {
marble1
finish {
ambient 0.4
diffuse 1.0
}
scale <5, 13, 4>
}
texture {
marble4
finish {
diffuse 1.0
phong 0.6
phong_size 20
}
scale <5, 7, 3>
rotate 50*z
}
bounded_by {
object {
Cube
scale <10.5, 7, 10.5>
translate <0, 7, 0>
}
}
}
/*-----------2 HALFS & 2 TURNS MAKE A WHOLE ------------------------*/
#declare capital = union {
object { cap_a translate <0, 0, 0> }
object { cap_b translate <0, 10, 0> }
object { turn translate <-6, 14, -4> }
object { turn rotate <0, 180, 0> translate <6, 14, -4> }
bounded_by {
object {
Cube
scale <11, 13, 11>
translate <0, 13, 0>
}
}
}
/*--------------MAKE COLUMN-------------------*/
/*-----------MOTIF TILE WORK--------------------*/
#declare motif2 = cylinder {
<0,0,0>, y, 1
scale <6.5, 8, 6.5>
texture {
pigment {
image_map { gif "congo4.gif" }
scale <13, 8, 1>
translate <-6.5, 0, -1>
}
finish {
ambient 0.3
diffuse 0.9
phong 1.0
}
}
}
#declare column_b = cylinder {
<0,0,0>, y, 1
scale <6, 54, 6>
texture {
marble1
finish {
ambient 0.4
diffuse 0.8
crand 0.1
}
scale <9, 30, 18>
}
texture {
marble2
scale <10, 18, 5>
rotate <0, 0, -30>
finish { diffuse 1.0 }
}
texture {
marble4
finish {
diffuse 0.9
phong 0.8
phong_size 45
}
scale <4, 15, 5>
rotate 50*z
}
}
/*-----------THE COMPLETE BOTTOM COLUMN---------------------------------*/
#declare bottom_column = union {
object { capital translate <0, 58, 0> }
object { motif2 translate <0, 50, 0> }
object { column_b translate <0, 0, 0> }
bounded_by {
cylinder {
<0,0,0>, y, 1
scale <12, 85, 12>
translate <0, 0, 0>
}
}
}
/*---------------------START LOWER WALLS-----------------------------*/
/*----------- ABOVE DOOR SECTION OF WALL -----------------------------*/
#declare brick_wall = object {
Cube
scale <30, 6, 3>
texture {
marble1
finish {
ambient 0.2
diffuse 0.9
}
scale <20, 30, 4>
}
texture {
marble2
scale <20, 9, 5>
finish { diffuse 1.0 }
rotate -30*z
}
texture {
marble4
finish {
phong 0.6
phong_size 25
}
scale <18, 18, 3>
rotate 50*z
}
}
/*-------------- ARCH SECTION OF WALL --------------------------------*/
#declare top_wall = object {
difference {
object { Cube scale <30, 10, 3> translate <0, 0, 0.01> }
object { Cylinder_Z scale <13, 13, 1> translate <0, -10, 0> }
}
texture {
marble1
finish {
ambient 0.2
diffuse 0.9
}
scale <30, 20, 4>
}
texture {
marble2
scale <26, 16, 5>
finish { diffuse 1.0 }
rotate -30*z
}
texture {
marble4
finish {
phong 0.6
phong_size 25
}
scale <15, 27, 2>
rotate 50*z
}
bounded_by {
object {
Cube
scale <30, 10, 2>
translate <0, 0, 0>
}
}
}
/*------------------ TRIM ---------------------------------------------*/
#declare molding_2 = union {
difference {
cylinder { <0,0,0>, z, 1 scale <16, 16, 12> translate <0, 0, -6> }
object { Cylinder_Z scale <13, 13, 1> }
}
object { Cube scale <10, 2, 6> translate <-21, -2, 0> }
object { Cube scale <10, 2, 6> translate <21, -2, 0> }
object { Cube scale <31, 1, 6> translate <0, 17, 0> }
texture {
marble1
finish {
ambient 0.5
diffuse 1.0
}
scale <15, 3, 4>
}
texture {
marble4
finish {
phong 0.8
phong_size 15
ambient 0.6
}
scale <15, 7, 6>
rotate 50*z
}
bounded_by {
object {
Cube
scale <31, 13, 4>
translate 9*y
}
}
}
#declare motif3 = object {
Cube
scale <9.5, 5, 3.1>
texture {
pigment {
image_map { gif "congo4.gif" }
scale <19, 10, 1>
translate <-9.5, -5, -1>
}
finish {
ambient 0.3
diffuse 0.9
phong 1.0
}
}
}
/*----------WALLS FLANKING DOOR WAY -----------------------------------*/
#declare low_wall = object {
Cube
scale <9, 22, 3>
texture {
marble1
finish {
ambient 0.3
diffuse 0.9
}
scale <15, 20, 7>
}
texture {
marble2
scale <10, 25, 3>
finish { diffuse 1.0 }
rotate <0, 0, -30>
}
texture {
marble4
finish {
phong 0.8
phong_size 25
ambient 0.5
}
scale <8, 16, 3>
rotate 50*z
}
}
/*----------COMPOSITE THE WALL------------------------------*/
#declare wall = union {
object { low_wall translate <-21, 22, 0> }
object { low_wall translate <21, 22, 0> }
object { motif3 translate <-21, 42, 0> }
object { motif3 translate <21, 42, 0> }
object { molding_2 translate <0, 50, 0> }
object { top_wall translate <0, 60, 0> }
object { brick_wall translate <0, 74, 0> }
bounded_by {
object {
Cube
scale <32, 41, 4>
translate <0, 41, 0>
}
}
}
/*--------CREATE INSIDE BACK WALL-----------------------*/
object {
Cube
scale <95, 55, 1>
texture {
marble1
finish {
ambient 0.2
diffuse 0.9
}
scale <40, 30, 5>
}
texture {
marble2
scale <30, 60, 3>
rotate -30*z
}
texture {
marble4
finish {
phong 0.8
phong_size 25
}
scale <30, 20, 3>
rotate 50*z
}
translate <0, 15, 10>
}
/*----------*** PUT UP THE WALLS ****--------------------*/
object { top_column rotate 10*y scale 1.9 translate <-30, 94, -25> }
object { top_floor translate <-10, 80, 0> }
object { bottom_column scale <1.3, 1, 1.3> translate <-100, 0, -40> }
object { bottom_column scale <1.3, 1, 1.3> translate <-30, 0, -40> }
object { bottom_column scale <1.3, 1, 1.3> translate <40, 0, -40> }
object { wall translate <5, 0, -32> }
object { wall translate <-65, 0, -32> }
/*---------------------BACKDROP---------------------------------*/
object {
Cube
scale <2000, 1500, 1>
texture {
pigment { Maroon }
// image_map { <1.0 -1.0 0> gif "sky1.gif" } // Optional sky map
// scale <4000 3000 2> translate <-2000 -1500 -2>
finish {
ambient 0.2
diffuse 0.6
}
}
texture {
pigment {
gradient y
color_map {
[0.0 0.3 color Salmon color BlueViolet filter 0.3]
[0.3 1.0 color BlueViolet filter 0.3 color Black filter 0.2]
}
scale <4000, 3000, 1>
translate <0, -1500, 0>
}
finish {
ambient 1.0
diffuse 0.0
}
}
scale <1, 1, 1>
translate <0, 0, 2000>
}
/*------------------- CREATURE & MOTHER-IN-LAW -------------------------*/
object {
panther
rotate -20*y
scale 1.2
translate <-70, 89.5, -10>
}
object {
lizard
scale <1, 0.9, 1>
rotate -10*z
translate <-33, 16, -20>
}
#declare snake = union {
object { top }
object {
head
scale <1.9, 1.6, 1.6>
rotate <0, -90, -90>
translate <23, 0, -13>
}
rotate <-90, -180, -90>
}
object { snake translate <-4, 87, -68> }
// end-of-file